1. Technical Field
The present disclosure relates to computer resource usage accounting in general, and in particular to a method and apparatus for supporting memory usage throttling on a per user virtual partition basis.
2. Description of Related Art
Many business and scientific computing applications are required to access large amounts of data, but different computing applications have different demands on computation and storage resources. Thus, many computing service providers, such as data centers, have to accurately account for the resource usage incurred by different internal and external users in order to bill each user according to each user's levels of resource consumption.
Several utility computing models have been developed to cater to the need for pay-per-use method of resource usage accounting. With these utility computing models, the usage of computing resources, such as processing time, is metered in the same way the usage of traditional utilities, such as electric power and water, is metered. One difficulty with the utility computing models is the heterogeneity and complexity of mapping resource usage to specific users. Data centers may include hundreds or thousands of devices, any of which may be deployed for use with a variety of complex applications at different times. The resources being used by a particular application may be changed dynamically and rapidly, and may be spread over a large number of devices. A variety of existing tools and techniques are available at each device to monitor usage. But the granularity at which resource usage measurement is possible may also differ from devices to devices. For example, in some environments, it may be possible to measure the response time of individual disk accesses, while in other environments only averages of disk access times may be obtained.
The present disclosure provides an improved method and apparatus for supporting memory usage throttling.